<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Title</title>
    </head>
    <body>
        <script>
            // 声明方式
            let arr1 = [11, true, 3, 'true']
            let arr2 = new Array(1, 4, 5, 1)
            // 最大值  ... 是展开运算
            document.write(Math.max(...arr2).toString())
            document.write('<br>')
            document.write('<br>')
            // 修改
            // 取下标直接赋值
            // 新增
            let new_length1 = arr1.push('111') // push里面可以多个，返回值是新长度
            let new_length2 = arr1.unshift('hehe', 3) // unshift在开头插入，返回值同上
            // document.writeln(arr1)
            // 删除
            // pop 删除最后一个，返回该元素的值
            // shift 删除第一个元素
            // splice(start, deleteCount, item1, item2, ... itemN) 开始位置，删除个数（可选）， 添加的元素（可选），删除的位置还可以添加新元素
            // 不写 deleteCount 会一直删除到最后一个
            // 返回值是所有被删除的元素的数组


            // 排序
            // 注意这个是按字符串排序，比如 1， 10, 2 这种ASCII 码
            arr1.sort()

            // 这种是按数值排序
            arr1.sort(function (a, b) {
                return a - b
                // 降序是 b - a
            })

            document.write(arr1)

            // 遍历 forEach 参数是一个函数，函数的参数是 item, index, array 代表当前元素，下标，数组
            arr1.forEach(function (item, index, array) {
                document.write(item)
                document.write(index)
                document.write(array)
            })

            // 字符串拼接：map 和 join
            // map 会对数组中的每个元素调用一个函数，返回一个新数组
            arr1.map(function (item, index, array) {
                return item + '1'
            })

            // join 用于把数组中的所有元素放入一个字符串，元素是通过指定的分隔符进行分隔的
            // 如果不写分隔符，默认是逗号
            document.write(arr1.join(' '))

            // 展开运算符 不会改变原数组，用于合并数组，计算数组最大值（最小值）
            let arr3 = [1, 2, 3]
            let arr4 = [4, 5, 6]
            let arr5 = [...arr3, ...arr4]

            // 筛选数组
            // filter 用于筛选数组中的元素，返回一个新数组
            let arr6 = arr5.filter(function (item, index, array) {
                return item > 3
            })


        </script>

    </body>
</html>